package com.zhangwei.liwushuo.adapter;

import android.support.v7.widget.RecyclerView;
import android.view.View;
import android.view.ViewGroup;

import com.zhangwei.liwushuo.adapter.vh.ViewWrapper;

import java.util.ArrayList;
import java.util.List;

/**
 * @说 明：
 * @项目名称：LiWuShuo
 * @包 名： com.zhangwei.liwushuo.adapter
 * @类 名： RecyclerViewAdapterBase
 * @创 建人： zhangwei
 * @创建时间：2015-08-19 22:28
 * @版 本：v1.0
 * @修 改人：
 * @修改时间：
 * @修改备注：
 */
public abstract class RecyclerViewAdapterBase<T, V extends View>  extends RecyclerView.Adapter{
    protected List<T> items = new ArrayList<T>();

    @Override
    public int getItemCount() {
        return items.size();
    }

    @Override
    public final ViewWrapper<V> onCreateViewHolder(ViewGroup parent, int viewType) {
        return new ViewWrapper<V>(onCreateItemView(parent, viewType));
    }

    protected abstract V onCreateItemView(ViewGroup parent, int viewType);

    public List<T> getItems() {
        return items;
    }

    public void setItems(List<T> items) {
        this.items = items;
    }
}
